package lib;

@:native("JSON")
extern class Json {
	public static function stringify(data:Dynamic):Dynamic;
	public static function parse(data:Dynamic):Dynamic;
}

@:native("console")
extern class Console {
	public static function log(data:haxe.extern.Rest<Dynamic>):Void;
	public static function info(data:haxe.extern.Rest<Dynamic>):Void;
	public static function warn(data:haxe.extern.Rest<Dynamic>):Void;
	public static function error(data:haxe.extern.Rest<Dynamic>):Void;
	public static function exception(data:haxe.extern.Rest<Dynamic>):Void;
	public static function debug(data:haxe.extern.Rest<Dynamic>):Void;
	public static function table(data:haxe.extern.Rest<Dynamic>):Void;
	public static function trace():Void;
	public static function dir(data:haxe.extern.Rest<Dynamic>):Void;
	public static function dirxml(data:haxe.extern.Rest<Dynamic>):Void;
	public static function group(data:haxe.extern.Rest<Dynamic>):Void;
	public static function groupCollapsed(data:haxe.extern.Rest<Dynamic>):Void;
	public static function groupEnd(data:haxe.extern.Rest<Dynamic>):Void;
	public static function time(?time:Dynamic):Void;
	public static function timeEnd(?time:Dynamic):Void;
	public static function timeStamp(?data:Dynamic):Void;
	public static function profile(data:haxe.extern.Rest<Dynamic>):Void;
	public static function profileEnd(data:haxe.extern.Rest<Dynamic>):Void;
	public static function assert(condition:Bool, data:haxe.extern.Rest<Dynamic>):Void;
	public static function count(data:haxe.extern.Rest<Dynamic>):Void;
	public static function clear():Void;
	public static function markTimeline():Void;
	public static function timeline():Void;
	public static function timelineEnd():Void;
}
